#ifndef LEPTJSON_H__
#define LEPTJSON_H__

//JSON数据类型
typedef enum{
    LEPT_NULL,
    LEPT_FALSE,
    LEPT_TRUE,
    LEPT_NUMBER,
    LEPT_STRING,
    LEPT_ARRAY,
    LEPT_OBJECT,
}lept_type;

//JSON数据结构
typedef struct{
    lept_type type;
}lept_value;

//解析JSON
int lept_parse(lept_value* v, const char* json);

//获取JSON数据类型
lept_type lept_get_type(const lept_value* v);

// 定义错误码
typedef enum{
    LEPT_PARSE_OK = 0,
    // 只有空白字符
    LEPT_PARSE_EXPECT_VALUE,
    // 无效值
    LEPT_PARSE_INVALID_VALUE,
    // 非法的字符
    LEPT_PARSE_ROOT_NOT_SINGULAR,
}err_code;
#endif